<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        span {
            display: inline-block;

            width: 0px;

            height: 0px;

            line-height: 0px;
            /*为了防止ie下出现题型*/

            border-bottom: 10px solid #89b007;

            border-left: 10px solid #fff;

            border-right: 10px solid #fff;

            left: 76px;

            top: -10px;
        }
    </style>
</head>

<body>
    <button>1</button>
    <button>2</button>
    <button>3</button>
    <span></span>
    <script>
        //1.
        function fun(a, b) {
            b(a);
        }
        function sum(a) {
            for (var i = 0; i < a; i++) {
                console.log(i);
            }
        }
        fun(10, sum);


        //2.
        function fun2() {
            return sum2();
        }
        function sum2() {
            console.log("你好");
        }
        fun2();


        //3.
        (function () {
            let sum = 0;
            for (let i = 1; i <= 100; i++) {
                sum += i;
            }
            console.log(sum);
        })();


        //6
        var Dog = {
            shake: function (name) {
                if (name == 'Tom') {
                    console.log('主人回来了');
                }
            }
        }
        Dog.shake("Tom");


        //7
        function obj(a) {
            if (typeof a == "function") {
                return a();
            } else {
                console.log(a);
            }
        }
        var aa = function () {
            console.log('今天星期三');
        }
        obj("aa");

        //8.
        var ggg = document.querySelectorAll("button");
        for (let i = 0; i < ggg.length; i++) {
            ggg[i].addEventListener("click", function () {
                console.log(this.innerHTML);
            })
        }
//         0、解释以下的语法现象：
// var arr1 = [[true,2,'one'][3],[1,{"num":47}][1]['num']];
// var i = 3;
// var arr2 = [(i -= 2,[true,'abc'][i]['length']),[[],[][0]][1]];
// 1、定义一个函数，他有两个参数，一个是执行次数，一个是需要执行的函数，调用这个函数。
// 2、定义一个函数，它的返回值是另外一个函数，另外这个函数有一个打印语句，请调用函数运行这个打印语句。
// 3、同时定义和运行一个匿名的函数，计算1到100之间的整数和
// 4、创建一个猫Cat对象，包含一个体重weight属性和吃饭eat的方法，每调用一次eat方法，体重就加1，调用3次eat方法后，在控制台打印出猫的体重。
// 5、创建一个Car对象，包含一个花费属性cost和run方法，run方法中包含一个参数公里数kl，每跑1公里，花费就增加0.8元，调用run方法后，打印出花费。
// 6、创建一个Dog对象，包含一个摇尾巴shake的方法，该方法有一个参数name，当name等于'Tom'时，在控制台打印‘主人回来了’，其他的值不执行任何代码。
// 7、创建一个函数，包含一个参数a，当a是函数时，执行a，否则打印出a的值。
// 8、在页面创建三个按钮，通过js脚本循环给这三个按钮绑定一个点击事件，当点击第一个按钮弹出数字0，第二个按钮弹出数字1，第三个按钮弹出数字2。。。
    </script>
</body>

</html>